package com.candy.control;


import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;

@Controller
@RequestMapping("hello")
public class HelloController2{

    @RequestMapping("hello1.do")
    public ModelAndView show1() throws Exception {
//        创建视图模型对象
        ModelAndView modelAndView=new ModelAndView();
//        设置视图名字
        modelAndView.setViewName("HelloWorld");
//        可以传递参数到视图中
        modelAndView.addObject("msg","这是SpringMVC的第一个程序.."+new Date());
//        最后将视图返回，由视图解析器进行解析
//        /WEB-INF/pages/HelloWorld..jsp
        return modelAndView;
    }


    @RequestMapping("show2.do")
    public String show2() {
//        当方法返回值为String类型，返回的是视图名字
        return "HelloWorld";
    }
    @RequestMapping("show3.do")
//    ResponseBody注解，告诉springMVC将内容以json字符串的方式返回
    @ResponseBody
    public Map<String,Object> show3(){
        Map mp=new HashMap();
        mp.put("name","tom");
        mp.put("age",21);
        return mp;
    }

    @RequestMapping("show4.do")
    public ModelAndView show4() throws Exception {
//        创建视图模型对象
        ModelAndView modelAndView=new ModelAndView("HelloWorld");
//        可以传递参数到视图中
        modelAndView.addObject("msg","这是SpringMVC的第一个程序.."+new Date());
//        最后将视图返回，由视图解析器进行解析
//        /WEB-INF/pages/HelloWorld..jsp
        return modelAndView;
    }

    @RequestMapping("show5.do")
    public String show5(Model model) {
        model.addAttribute("msg","我是show5方法跳转过来的");
//        当方法返回值为String类型，返回的是视图名字
        return "HelloWorld";
    }

    @RequestMapping("show6.do")
    public ModelAndView show6(@RequestParam("username") String username,@RequestParam("userpwd")String userpwd)  {
        System.out.println(username);
        System.out.println(userpwd);
        //        创建视图模型对象
        ModelAndView modelAndView=new ModelAndView();
//        设置视图名字
        modelAndView.setViewName("HelloWorld");
//        可以传递参数到视图中
        modelAndView.addObject("msg","这是SpringMVC的第一个程序.."+new Date());
//        最后将视图返回，由视图解析器进行解析
//        /WEB-INF/pages/HelloWorld..jsp
        return modelAndView;
    }

    @RequestMapping("show7")
    public String show7(){

        return "redirect:show4.do";

    }
    @RequestMapping("show8")
    public String show8(){

        return "forward:show4.do";

    }




}
